package com.iran;

import java.util.Arrays;

/**
 * 首先在未排序序列中找到最小（大）元素，存放到排序序列的起始位置，然后，再从剩余未排序元素中继续寻找最小（大）元素，
 * 然后放到已排序序列的末尾。以此类推，直到所有元素均排序完毕。
 */
public class SelectionSort {
    public static void main(String[] args) {
        int[] arr = {0,23,45,9,40,73,12,49,423,122,33,44,55,66,77,88,99,101,102,133,144};
        long s1 = System.currentTimeMillis();
        for (int i = 0;i<arr.length-1;i++){
            int minIndex = i;
            for (int j=i+1;j<arr.length;j++){
                if (arr[j]<arr[minIndex]){
                    minIndex = j;
                }
            }
            int temp = arr[i];
            arr[i]=arr[minIndex];
            arr[minIndex] = temp;
        }
        System.out.println("耗时:"+(System.currentTimeMillis()-s1));
        Arrays.stream(arr).forEach(System.out::println);
    }
}
